package io;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;

/**
 * 从文件里面读取字符串
 */
public class ReadStringDemo {
    public static void main(String[] args) throws IOException {
        // 创建一个集合去存储路径
        List<String> list = new ArrayList<>();
        list.add("./src/main/java/io/note.txt");
        list.add("./src/main/java/io/ReadStringDemo.java");

        // 遍历集合
        for(int i =0 ; i < list.size(); i++){
            System.out.println(list.get(i));
        }
        // 创建一个file对象去读取文件
        File file = new File(list.get(1));
        // 创建一个字节输入流连接到指定文件
        FileInputStream fis = new FileInputStream(file);

        // 一次性将文件里面的内容所有字节全部读出来
        byte[] bytes = new byte[(int)file.length()];
        // 读取一次就可以将所有的字节读出去了
        fis.read(bytes);

        // 使用字符串的构造方法将字节数组转换成字符串
        String str = new String(bytes, StandardCharsets.UTF_8);
        System.out.println(str);

        fis.close();  // 关闭流

    }
}
